#ifndef SHAPE_DECISION_H
#define SHAPE_DECISION_H

#include <QObject>
#include "resizableshape.h"

/**
 * @class DecisionShape
 * Представляет собой элемент Decision языка UML.
 */
class DecisionShape : public ResizableShape
{
public:
	DecisionShape (QGraphicsItem *parent = NULL);
	DecisionShape (const QPointF &pos, QGraphicsItem *parent = NULL);
	virtual DecisionShape *clone() const;
	QPointF flowConnectionPoint (const QPointF &anotherEnd, Flow *flow) const;

	virtual bool connectToCorners() const;
	virtual void setConnectToCorners(bool newValue);
	virtual void editProperties();

protected:
	virtual void paint (QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget);
	virtual QPainterPath shape() const;

private:
	bool _connectToCorners;
};

#endif // SHAPE_DECISION_H
